Microphone.get()

Доступность

Flash Player 6.

Синтаксис

Microphone.get([index:Number]) : Microphone

Замечание: Корректным синтаксисом является Microphone.get(). Чтобы присвоить объект Microphone переменной, используйте следующий синтаксис: active_mic = Microphone.get().

Параметры

index Необязательный параметр, число. Отсчет начинается с нуля. Определяет, какой микрофон из массива, хранящегося в Microphone.names, выбирается. Чтобы выбрать микрофон, используемый по умолчанию (рекомендуется для большинства приложений), опустите этот параметр.

Возвращает

Описание

Метод; возвращает ссылку на объект Microphone для захвата звука. Для начала записи, Вы должны подключить объект Microphone к какому-либо экземпляру класса MovieClip (смотри MovieClip.attachAudio()).

В отличие от объектов, создаваемых при помощи конструктора new, в результате множества вызовов метода Microphone.get() Вы получите ссылку на один и тот же микрофон. Таким образом, если в вашем скрипте есть строки mic1 = Microphone.get() и mic2 = Microphone.get(), и mic1, и mic2 будут ссылаться на один и тот же микрофон.

В общем случае , Вы не должны передавать значение для праметра index; просто используйте метод для Microphone.get() для получения ссылки на микрофон, используемый по умолчанию. Посредством панели Microphone settings (см. данный раздел ниже), пользователь сам может выбрать, какой именно микрофон Flash должен использовать по умолчанию. Если Вы передадите значение для параметра index, Вы можете получить доступ к микрофону, который сам пользователь предпочитает не использовать. Рекомендуется использовать index в редких случаях — например, если ваше приложение захватывает звук одновременно с двух микрофонов.

Когда SWF файл пытается получить доступ к микрофону, ссылка на который возвращена методом Microphone.get() — например, при использовании MovieClip.attachAudio()— Flash Player покажет диалоговое окно Privacy, позволяющее пользователю выбрать, разрешить или запретить доступ к микрофону. (Убедитесь, что размер Сцены не меньше 215 x 138 пикселов; это минимальный размер документа, необходимый Flash для отображения диалогового окна.)

Когда пользователь выбирает какой-либо из пунктов диалогового окна, обработчик события Microphone.onStatus возвращает объект, содержащий информацию о выборе пользователя. Чтобы определить, разрешил ли пользователь доступ к микрофону, без использования обработчика события, используйте Microphone.muted.

Пользователь может также сохранить свой выбор в окне Privacy settings для определенного домена, кликнув правой кнопкой (Windows) или Control-клик (Macintosh) во время проигрывания SWF, выбрав в меню пункт Settings, открыв панель Privacy panel и выбрав Remember.

При помощи ActionScript Вы не можете выбрать Allow или Deny вместо пользователя, но Вы можете вывести панель Privacy panel , используя System.showSettings(0). Если пользователь выбирает Remember, Flash Player больше не показывает диалоговое окно Privacy для SWF файлов из данного домена.

Если Microphone.get() возвращает null, значит, либо микрофон уже используется другим приложением, либо в системе не установлено ни одного микрофона. Чтобы определить, установлен ли хотя бы один микрофон в системе, используйте Microphones.names.length. Для отображения панели Flash Player Microphone Settings, позволяющую пользователю выбрать, какой микрофон использовать по умолчанию (не него будет возвращена ссылка методом Microphone.get(), если параметр ей не передан), используйте System.showSettings(2).

Пример

В примере ниже пользователю дается возможность выбрать микрофон, используемый по умолчанию, а затем звук захватывается и воспроизводится локально. Чтобы избежать зацикливания звука, тестировать этот пример лучше в наушниках.

this.createEmptyMovieClip("sound_mc", this.getNextHighestDepth());
System.showSettings(2);
var active_mic:Microphone = Microphone.get();
sound_mc.attachAudio(active_mic);

См. также

Microphone.index, Microphone.muted, Microphone.names, Microphone.onStatus, MovieClip.attachAudio(), System.showSettings()